//
// Created by cube on 2020/10/23.
//


//    MemoryPool<Obj> pool;
//    pool.resize(10);
//    Obj* obj = pool.get();
//    obj = pool.get();
//    obj = pool.get();
//    obj = pool.get();
//    obj = pool.get();
//    obj = pool.get();
//    pool.clear();

//CThread t;
//t.setRun([](){
//std::this_thread::sleep_for(std::chrono::seconds(1));
//std::cout<<"ii"<<std::endl;
//});
//t.start();
//std::this_thread::sleep_for(std::chrono::seconds(3));
//t.stop();
//t.join();


//template <typename T,typename ...Args>
//T autoward(Args ...args){
//    auto& f = PublicSingle::singleCase<T(*)(Args...)>();
//    return f(std::forward<Args>(args)...);
//}
//
//template <typename T,typename ...Args>
//void setAutoward(T(*fun)(Args...)){
//    PublicSingle::singleCase<T(*)(Args...)>() = fun;
//}
//
//int fff(int a){return 3+a;}
//
//setAutoward(fff);
//std::cout<<autoward<int>(8)<<std::endl;
